// import { DECREMENT, INCREMENT } from "../const.js/counter.const"
//
// const initialState = {
//   count: 0
// }
//
// /**
//  *  react-redux
//  *  Provider  privider的作用是将创建出来的store 放在一个可以全局的 组件可以够的到的 地方
//  *  connect
//  *         connect帮助组件订阅store 并且当store发生改变的时候 重新渲染组件
//  *         connect可以帮助 将store当中的state映射到组件的props当中， 传给组件
//  *         connect可以帮助 拿到redux当中的dispatch方法
//  */
//
// export default (state = initialState, action) => {
//   switch(action.type) {
//     case INCREMENT:
//       return {
//         ...state,
//         count: state.count + action.payload
//       }
//     case DECREMENT:
//       return {
//         ...state,
//         count: state.count - action.payload
//       }
//     default:
//       return state
//   }
// }

// redux-actions 案例
import { handleActions as createReducer } from 'redux-actions'
import { increment, decrement } from "../actions/counter.action"

const initialState = {
  count: 0
}

const handleIncrement = (state, action) => ({ count: state.count + action.payload })
const handleDecrement = (state, action) => ({ count: state.count - action.payload })

export default createReducer({
  [increment]: handleIncrement,
  [decrement]: handleDecrement,
}, initialState)